package com.pig4cloud.pigx.strategy.constant;

/**
 * 策略模块mq常量
 *
 * @since 2022/11/28 15:27
 */
public interface StrategyMqConstant {

    /**
     * 交换机 任务-合约处理
     */
    String EXCHANGE_FANOUT_STRATEGY_TASK_CONTRACT_HANDLE = "strategy.task.contract.handle";
    /**
     * 队列 任务-合约处理
     */
    String QUEUE_FANOUT_STRATEGY_TASK_CONTRACT_HANDLE = EXCHANGE_FANOUT_STRATEGY_TASK_CONTRACT_HANDLE;
    /**
     * 消息过期时间 任务-合约处理 60秒
     */
    int QUEUE_FANOUT_STRATEGY_TASK_CONTRACT_HANDLE_TTL = 60 * 1000;

    /**
     * 死信交换机 订单-合约信息同步
     */
    String EXCHANGE_FANOUT_DELAY_STRATEGY_ORDER_CONTRACT_SYNC = "strategy.delay.order.contract.sync";
    /**
     * 死信队列 订单-合约信息同步
     */
    String QUEUE_FANOUT_DELAY_STRATEGY_ORDER_CONTRACT_SYNC = EXCHANGE_FANOUT_DELAY_STRATEGY_ORDER_CONTRACT_SYNC;
    /**
     * 死信队列过期时间 订单-合约信息同步
     */
    int QUEUE_FANOUT_DELAY_STRATEGY_ORDER_CONTRACT_SYNC_TTL = 1000;

    /**
     * 交换机 订单-合约订单信息同步
     */
    String EXCHANGE_FANOUT_STRATEGY_ORDER_CONTRACT_SYNC = "strategy.order.contract.sync";
    /**
     * 队列 订单-合约订单信息同步
     */
    String QUEUE_FANOUT_STRATEGY_ORDER_CONTRACT_SYNC = EXCHANGE_FANOUT_STRATEGY_ORDER_CONTRACT_SYNC;

    /**
     * 交换机 策略-合约暂停
     */
    String EXCHANGE_FANOUT_STRATEGY_CONTRACT_PAUSE = "strategy.contract.pause";
    /**
     * 队列 策略-合约暂停
     */
    String QUEUE_FANOUT_STRATEGY_CONTRACT_PAUSE = EXCHANGE_FANOUT_STRATEGY_CONTRACT_PAUSE;

    /**
     * 交换机 策略-合约恢复
     */
    String EXCHANGE_FANOUT_STRATEGY_CONTRACT_RESTORE = "strategy.contract.restore";
    /**
     * 队列 策略-合约恢复
     */
    String QUEUE_FANOUT_STRATEGY_CONTRACT_RESTORE = EXCHANGE_FANOUT_STRATEGY_CONTRACT_RESTORE;

    /**
     * 交换机 策略-合约平仓
     */
    String EXCHANGE_FANOUT_STRATEGY_POSITION_CONTRACT_CLOSE = "strategy.position.contract.close";
    /**
     * 队列 策略-合约平仓
     */
    String QUEUE_FANOUT_STRATEGY_POSITION_CONTRACT_CLOSE = EXCHANGE_FANOUT_STRATEGY_POSITION_CONTRACT_CLOSE;

    /**
     * 交换机 策略-合约 用户充值燃油币后额度大于0
     */
    String EXCHANGE_FANOUT_STRATEGY_CONTRACT_FUEL_RECHARGE = "strategy.contract.fuel.recharge";
    /**
     * 队列 策略-合约 用户充值燃油币后额度大于0
     */
    String QUEUE_FANOUT_STRATEGY_CONTRACT_FUEL_RECHARGE = EXCHANGE_FANOUT_STRATEGY_CONTRACT_FUEL_RECHARGE;

    /**
     * 交换机 任务-合约创建
     */
    String EXCHANGE_FANOUT_STRATEGY_TASK_CONTRACT_CREATE = "strategy.task.contract.create";
    /**
     * 队列 任务-合约创建
     */
    String QUEUE_FANOUT_STRATEGY_TASK_CONTRACT_CREATE = EXCHANGE_FANOUT_STRATEGY_TASK_CONTRACT_CREATE;

    /**
     * 交换机 发送邮件
     */
    String EXCHANGE_FANOUT_STRATEGY_EMAIL = "strategy.contract.email";
    /**
     * 队列 发送邮件
     */
    String QUEUE_FANOUT_STRATEGY_EMAIL = EXCHANGE_FANOUT_STRATEGY_EMAIL;

    /**
     * 交换机 检查燃油费账户额度是否达到预警值
     */
    String EXCHANGE_FANOUT_STRATEGY_CONTRACT_FUEL_WARNING = "strategy.contract.fuel.warning";
    /**
     * 队列 检查燃油费账户额度是否达到预警值
     */
    String QUEUE_FANOUT_STRATEGY_CONTRACT_FUEL_WARNING = EXCHANGE_FANOUT_STRATEGY_CONTRACT_FUEL_WARNING;

    /**
     * 交换机 任务异常后结算利润
     */
    String EXCHANGE_FANOUT_STRATEGY_TASK_CONTRACT_ERROR_SETTLEMENT = "strategy.task.contract.error.settlement";
    /**
     * 队列 任务异常后结算利润
     */
    String QUEUE_FANOUT_STRATEGY_TASK_CONTRACT_ERROR_SETTLEMENT = EXCHANGE_FANOUT_STRATEGY_TASK_CONTRACT_ERROR_SETTLEMENT;


    /**
     * 死信交换机 订单-合约止盈止损同步
     */
    String EXCHANGE_FANOUT_DELAY_STRATEGY_STOP_ORDER_CONTRACT_SYNC = "strategy.delay.stop.order.contract.sync";
    /**
     * 死信队列 订单-合约止盈止损同步
     */
    String QUEUE_FANOUT_DELAY_STRATEGY_STOP_ORDER_CONTRACT_SYNC = EXCHANGE_FANOUT_DELAY_STRATEGY_STOP_ORDER_CONTRACT_SYNC;
    /**
     * 死信队列过期时间 订单-合约止盈止损同步
     */
    int QUEUE_FANOUT_DELAY_STRATEGY_STOP_ORDER_CONTRACT_SYNC_TTL = 1000;
    /**
     * 交换机 订单-合约止盈止损同步
     */
    String EXCHANGE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_SYNC = "strategy.stop.order.contract.sync";
    /**
     * 队列 订单-合约止盈止损同步
     */
    String QUEUE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_SYNC = EXCHANGE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_SYNC;

    /**
     * 交换机 策略-止盈止损创建
     */
    String EXCHANGE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_CREATE = "strategy.stop.order.contract.create";
    /**
     * 队列 策略-止盈止损创建
     */
    String QUEUE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_CREATE = EXCHANGE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_CREATE;

    /**
     * 交换机 策略-止盈止损撤销
     */
    String EXCHANGE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_CANCEL = "strategy.stop.order.contract.cancel";
    /**
     * 队列 策略-止盈止损撤销
     */
    String QUEUE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_CANCEL = EXCHANGE_FANOUT_STRATEGY_STOP_ORDER_CONTRACT_CANCEL;

    /**
     * 交换机 策略-手动开仓
     */
    String EXCHANGE_FANOUT_STRATEGY_POSITION_CONTRACT_OPEN_MANUAL = "strategy.position.contract.open.manual";
    /**
     * 队列 策略-手动开仓
     */
    String QUEUE_FANOUT_STRATEGY_POSITION_CONTRACT_OPEN_MANUAL = EXCHANGE_FANOUT_STRATEGY_POSITION_CONTRACT_OPEN_MANUAL;

    /**
     * 交换机 策略-手动部分平仓
     */
    String EXCHANGE_FANOUT_STRATEGY_POSITION_CONTRACT_CLOSE_PART = "strategy.position.contract.close.part";
    /**
     * 队列 策略-手动部分平仓
     */
    String QUEUE_FANOUT_STRATEGY_POSITION_CONTRACT_CLOSE_PART = EXCHANGE_FANOUT_STRATEGY_POSITION_CONTRACT_CLOSE_PART;
}
